package littlecyberwar.model;

import java.io.Serializable;
/**
 * This represent an instruction that "changes" the model from a previous state
 * This object is serializable because it is always passed on to the CmdBackingStore which
 * Either goes out to the wire (if network game), to a file, or both.
 *
 * A command can be any one of the following:
 * 1. chat message
 * 2. change to model
 */
public abstract class Command implements Serializable {
	public static final int _commandType_unit=1;
	public static final int _commandType_chat=2;	
	public static final int _commandType_placement=3;
	public static final int _commandType_dieroll=4;
	public static final int _commandType_attribChange=5;
	public static final int _commandType_gameState=6;
	public static final int _commandType_remove=7;
	public static final int _commandType_unit_rotate=8;
	public static final int _commandType_changeLayer=9;
	
	private String playerName;		// the player who sent this message 
		
  public Command() {
  }

  public int getType() {
    return ( 0 );
  }

	/**
	 * @return
	 */
	public String getPlayerName() {
		return playerName;
	}

	/**
	 * @param string
	 */
	public void setPlayerName(String string) {
		playerName = string;
	}

}